package com.woniu.dto;

import java.time.LocalDate;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 出院记录查询DTO (Data Transfer Object)
 * 封装分页参数和条件查询参数
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class DischargeRecordQueryDTO {

    /**
     * 当前页码
     */
    private Integer pageNum = 1;

    /**
     * 每页显示条数
     */
    private Integer pageSize = 10;

    /**
     * 条件：医生姓名 (模糊查询)
     */
    private String doctorName;

    /**
     * 条件：病人姓名 (模糊查询)
     */
    private String patientName;

    /**
     * 条件：出院日期 (开始)
     * 接收 yyyy-MM-dd 格式的日期字符串
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dischargeStartDate;

    /**
     * 条件：出院日期 (结束)
     * 接收 yyyy-MM-dd 格式的日期字符串
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dischargeEndDate;

}
